from collection import Edge, Graph, Vertex


class AdjacencyListGraph(Graph):
    """
    邻接表
    """

    def __init__(self, edges: list[list[Vertex]]):
        """
        docstring
        """
        self.__adj_list: dict[Vertex, list[Vertex]] = dict[Vertex, list[Vertex]]()

        for edge in edges:
            self.add_edge(edge)

    def add_edge(self, edge: Edge):
        # self.__adj_list
        self.__adj_list[edge.fromVertex].append(edge.toVertex)

    def remove_edge(self, parameter_list):
        """
        docstring
        """
        raise NotImplementedError


def main(parameter_list):
    """
    docstring
    """
    g = AdjacencyListGraph()


if __name__ == "__main__":
    main()
